Digital video is used for various purposes including, for example, remote business meetings via video conferencing, high definition video entertainment, video advertisements, and sharing of user-generated videos. As digital video applications evolve, users have higher expectations for video quality and expect high resolution video even when transmitted over communications channels having limited bandwidth.
To permit higher quality transmission of video while limiting bandwidth consumption, a number of video compression schemes are noted including formats such as VPx, promulgated by Google Inc. of Mountain View, Calif., and H.264, a standard promulgated by ITU-T Video Coding Experts Group (VCEG) and the ISO/IEC Moving Picture Experts Group (MPEG), including present and future versions thereof. H.264 is also known as MPEG-4 Part 10 or MPEG-4 AVC (formally, ISO/IEC 14496-10).
These compression schemes use different techniques to achieve compression. For example, many of these schemes use prediction techniques to predict where information contained in a portion of a first frame or first region of a frame can be found in a second frame or second frame region. The difference between the prediction and the portion of data in the second frame or second region is calculated to form a residual. One type of prediction, known as intra prediction, can be obtained from data within a current frame. Another type of prediction, known as inter prediction can be obtained from data in previously coded frames. Prediction techniques can have a significant impact on compression. More accurate predictions can result in a smaller residual (i.e. less data), which in turn can lead to better compression. Conversely, less accurate predictions can result in a larger residual (i.e. more data), which can lead to poor compression.
Some intra prediction techniques, for example, copy samples (or filtered samples) from adjacent, previously coded blocks to predict the values in the current block. In some instances, this process may not be suitable to provide the best compression.